JSONObject.parseObject和JSONObject.fromObject

您所在的位置:网站首页 json jsonobject区别 JSONObject.parseObject和JSONObject.fromObject

JSONObject.parseObject和JSONObject.fromObject

2024-07-06 23:04| 来源: 网络整理| 查看: 265

参考:https://blog.csdn.net/qq635785620/article/details/10436789

https://blog.csdn.net/qq_40206864/article/details/82997458

说明

 com.alibaba.fastjson.JSONObject是经常会用到的JSON工具包,同样它的转换方法也会经常被我们使用,包括对象转成JSON串,JSON串转成java对象等,如果过一段时间不用的话很容易就会忘记,所以将使用方法总结如下,以便以后忘记了方便查

询。

//Java对象转换成String类型的JSON字符串 JSONObject.toJSONString(Java对象) //String类型的JSON字符串转换成Java对象 JSONObject.toJavaObject(JSON字符串,Java对象.class) //Json字符串转换成JSONObject对象 JSONObject.parseObject(JSON字符串) //JSON字符串转换成Java对象 JSONObject.parseObject(JSON字符串,Java对象.class) JSON

JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。

创建json对象

用put(key,value)拼接json:

JSONObject object = new JSONObject(); jsonObjectRow.put("YWH", projId); jsonObjectRow.put("YWX", "2010"); jsonObjectRow.put("JGXYH", jsonObject.getString("ZJYH"));

 

创建json数组

用add添加json对象(json对象转json数组):

JSONArray jsonArrayRow = new JSONArray(); jsonArrayRow.add(object); JSON.parseObject(String text)与JSONObject.parseObject(String text)

      JSONObject是JSON的子类。JSON是一个抽象类,JSON中有一个静态方法parseObject(String text),将text解析为一个JSONObject对象并返回;JSONObject是一个继承自JSON的类,当调用JSONObject.parseObject(result)时,会直接调用父类的parseObject(String text)。所以两者没什么区别,一个是用父类去调用父类自己的静态的parseObject(String text),一个是用子类去调用父类的静态parseObject(String text),两者调的是同一个方法。

 

parseObject(String str) 的作用:

    json.parseObbject(String str)是将str转换成相应的jsonObject对象,其中str是“键值对”形式的json字符串,转化为jsonObject对象之后就可以使用其内置的方法,进行处理

JSON.parseArray()

这个方法的作用就是将json格式的数据转换成数组格式。 假设有Person这个类,有json类型数据jsonStr = [{"name":"张三","age":"1"},{"name":"李四","age":"4"}],那么List lists = json.parseArray(jsonStr, Person.class);lists就可以接收jsonStr了  

JSON与JAVA数据的转换()

来自net.sf.json.*下的类(jar包是json-lib-x.x.jar) JSONObject jo = JSONObject.fromObject(map);将参数解析成JSONObject对象

它在对Object转换的时候是按照domain类中的所有getXXX()方法进行转换的。如果你在类中写了非属性的getXXX()方法,那么返回给你的就会有XXX属性了。

1. List集合转换成json代码 List list = new ArrayList(); list.add( "first" ); list.add( "second" ); JSONArray jsonArray2 = JSONArray.fromObject( list ); 2. Map集合转换成json代码 Map map = new HashMap(); map.put("name", "json"); map.put("bool", Boolean.TRUE); map.put("int", new Integer(1)); map.put("arr", new String[] { "a", "b" }); map.put("func", "function(i){ return this.arr[i]; }"); JSONObject json = JSONObject.fromObject(map); 3. Bean转换成json代码 JSONObject jsonObject = JSONObject.fromObject(new JsonBean()); 4. 数组转换成json代码 boolean[] boolArray = new boolean[] { true, false, true }; JSONArray jsonArray1 = JSONArray.fromObject(boolArray); 5. 一般数据转换成json代码 JSONArray jsonArray3 = JSONArray.fromObject("['json','is','easy']" );

6、首先将json字符串转换为json对象,然后再解析json对象,过程如下。

JSONObject jsonObject = JSONObject.fromObject(jsonStr);

 根据json中的键得到它的值

String name = jsonObject.getString("name"); int num = jsonObject.getInt("num"); String sex = jsonObject.getString("sex"); int age = jsonObject.getInt("age");

7.将json字符串转换为java对象先将json字符串转换为json对象,再将json对象转换为java对象,如下所示。

JSONObject obj = new JSONObject().fromObject(jsonStr);//将json字符串转换为json对象 将json对象转换为java对象 Person jb = (Person)JSONObject.toBean(obj,Person.class);//将建json对象转换为Person对象

3.将java对象转换为json字符串先将java对象转换为json对象,在将json对象转换为json字符串

JSONObject json = JSONObject.fromObject(obj);//将java对象转换为json对象 String str = json.toString();//将json对象转换为字符串

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3